The Internet Engineering Task Force (IETF) initiated the development of the E.164 Number Mapping (ENUM) system for facilitating the interconnection of communications networks that rely on telephone numbers with the communications networks that utilize the Domain Name System (DNS). In particular, the ENUM system can map a particular number referred to as an E.164 number to one or more Uniform Resource Identifiers (URIs) in the DNS. URIs are strings of characters that identify resources such as documents, images, files, databases, e-mail addresses, websites or other resources or services in a common structured format. A URI can include a SIP URI, an instant messaging (IM) identifier, an e-mail address identifier, an Internet chat session identifier, and an IP address.
FIG. 1 is an exemplary communications network, generally designated 100, utilizing the ENUM system. Network 100 includes a gateway 102 for connecting the Public Switched Telephone Network (PSTN) system 104 to an IP Multimedia Subsystem (IMS) 106. Gateway 102 is operable to enable communication between a conventional telephone unit or other suitable network device connected to PSTN 104 and a mobile telephone unit or other suitable network device connected to IMS 106. The mobile telephone unit can communicate to IMS 106 via session initiation protocol (SIP) proxy server 108. The conventional telephone unit and mobile telephone unit can communicate voice data, text data, or other suitable data. ENUM system can be utilized, for example, when a user of the standard telephone unit attempts to reach a subscriber associated with the mobile telephone unit.
Communication between the conventional telephone unit and the mobile telephone unit can be initiated when a user of the conventional telephone unit dials a called party number (referred to herein as an E.164 number) for reaching a subscriber associated with the mobile telephone unit. A message containing the dialed E.164 number (or called party number) is routed to PSTN 104. PSTN 104 can then generate an ISUP AIM message 110 containing the E.164 number to gateway 102 which can determine whether the E.164 number is associated with the subscriber. Gateway 102 can determine whether the E.164 is associated with the subscriber by performing a look up in a subscriber database. In response to determining that the telephone number is associated with the subscriber, the E.164 number is converted into ENUM message format for transmission in an ENUM query 112. The E.164 number is converted to ENUM message format by reversing the digit order of the dialed E.164 number and appending the highest level domain e164.arpa to the end. For example, if the original E.164 number is 123-456-7890, ENUM query 112 is converted 0.9.8.7.6.5.4.3.2.1.e164.arpa (also referred to herein as an E.164 number). Next, the ENUM query is then communicated to an ENUM server 114. ENUM server 114 uses the ENUM query to retrieve one or more naming authority pointer (NAPTR) records associated with the E.164 number. Each of the NAPTR records may identify at least one URI corresponding to the subscriber with the E.164 number. The URI may identify the mobile telephone unit. The URI is then communicated to gateway 102 in an ENUM response 116 for establishing communication between the conventional telephone unit and the mobile telephone unit.
In addition, more than one URI can be contained in the NAPTR records for identifying one or more other network devices, services and/or addresses. For example, another URI returned to gateway 102 can identify a different way of reaching the subscriber associated with the dialed E.164 number, such as via e-mail or paging.
Rather than simply returning the URI or set of URIs obtained from ENUM server 114 to gateway 102, it may be desirable to obtain additional information, such as presence information for contacting the called party. Presence is a service that provides for the monitoring of the availability and disposition of services and/or addresses identified by URIs. Presence information is highly dynamic and generally characterize whether a user is online or offline, busy or idle, away from communications devices or nearby, and the like. Presence information is typically stored in a presence database. In order to obtain presence information regarding a subscriber, referred to as a presently, a subscribing entity must send a subscribe message to a presence server if presence information for the subscribed-to presently is available in the presence database, the presence server will respond with presence information for the presently. If presence information regarding the presently changes, the presence server will send presence update messages to subscribing entities.
As described above, the mechanisms for obtaining ENUM and presence information are distinct. However, it may be desirable to combine presence information with ENUM information to obtain enhanced contact information for a subscriber with multiple ENUM identities. Currently, such a combined mechanism does not exist. That is, a subscriber wishing to obtain presence information for multiple ENUM identities would be required to manually subscribe to or query a presence server for each ENUM identity.
Accordingly, in light of these difficulties associated with conventional ENUM systems, there exists a need for improved methods, systems, and computer program products for providing a combination of ENUM and presence services in a communications network.